In the large-scale networks of today, information flows through a series of nodes in the network from one location or site to another. As the network grows, more and more transmission lines are added to handle the heavy traffic flow between the nodes. To handle the information flow across the transmission lines, network switches are often used at the network nodes to direct the information between the various locations. By properly configuring the switches, information can be switched or directed from any ingress port to any egress port of the switch. An example of such a network switch is the MultiWave CoreDirector™ switch, manufactured and distributed by CIENA Corporation of Linthicum, Md.
FIG. 1 shows how information in a network 110 flows between many nodes 120. In an exemplary network, the nodes 120 are network switches. As FIG. 1 shows, each node 120 is located at various sites throughout network 110. For example, node 120 in San Francisco is connected to nodes 120 in Toledo and New York; the Toledo node 120 is connected to nodes 120 in New York and Boston; the New York node is connected to node 120 in Boston. Each node 120 is connected to one or more local devices 130 that communicate with other nodes and devices on the network. In addition, a client module 102 can be connected to the network 110 in order to provide a user with a mechanism to view limited characteristics of aspects of the network 110.
Using a routing and signaling protocol switches can be integrated in the same network. These protocols can create a network topology that represents a real-time view of the status and availability of the connections between nodes 120. The signaling and routing protocol can create a route, a basic “roadmap” for sending signals from an originating node to a destination node. The protocol generates the route based on many factors, such as network traffic, node status, down lines, etc. For example, the route may send a signal from San Francisco to Boston by directing it through Toledo. If for some reason that path is not available or desirable, the route could alternatively direct the signal through New York to Boston.
The signaling and routing protocol is also responsible for re-routing signals in the event of a failure of any line in the path. When a line in the route fails, the protocol updates the network topology and generates a new route that re-directs the signal using other available lines. Thus, in the above example, if the line between Toledo and Boston were to fail, the new route could re-direct the signal from San Francisco to Toledo to New York to Boston, or alternately go directly from San Francisco to New York to Boston. Again, the protocol would select the most desirable path available.
In practice, each connection between nodes does not consist of a single line as shown in FIG. 1, but rather is a plurality of parallel links. Additionally, each parallel link in the connection could have the capacity to carry a number of signals. For example, assume the network 110 of FIG. 1 is a Synchronous Optical Network (SONET) or Synchronous Digital Hierarchy (SDH) network and the connection between node A and node B comprises 40 parallel links, each carrying 48 optical carrier levels (OC-48) or timeslots. In that case, network 110 of FIG. 1 would contain a total of 200 parallel links and 9,600 timeslots. For simplicity purposes, all references to SONET shall be considered interchangeable with SDH. The signaling and routing protocol would have to manage all these timeslots between all nodes 120 on network 110.
In order to keep the network topology current, each node 120 in network 110 advertises the status and availability of the parallel links that connect that node to adjacent nodes in the network. This way, the signaling and routing protocol can optimize and select the best transmission path available between any two nodes. Any time the status or availability of any of the parallel links changes, node 120 advertises the new information to network 110. Using the example as described above, node A of FIG. 1 can advertise throughout network 110 the status and availability of each of the forty parallel links connecting node A to node B. Any time the status of any of the parallel links changes, node A advertises this new information to all nodes 120 on network 110. Thus, if one of the parallel links were to fail, node A advertises the unavailability of the failed link to the network. The signaling and routing protocol would then change the network topology accordingly.
In large networks, the maintenance of network topology information can be difficult and cumbersome and can severely curtail the performance and maintenance of a network. As network administrators deal with much larger and complex networks, many problems can arise as the number of nodes, parallel links and capacity per link increase.
First, because the signaling and routing protocol builds a topology database at each node 120 in network 110, larger networks with many nodes and links between nodes can use up a significant amount of memory at each node 120. Additionally, whenever any node 120 in the network initializes, a parallel link 140 is removed, fails or any other event occurs that results in a change in the network topology, the affected node 120 must advertise to each and every other node 120 on network 110 the new topology information. Obviously, a network with hundreds or thousands of parallel links 140 could easily and frequently be flooded with new topology information generated from the change in status of the many connections between its many nodes, requiring very significant processing and communications bandwidth. Maintaining topology information over such a network thus places a tremendous burden on network performance and scalability. Also, many element management or network management systems using graphics to represent network topology cannot feasibly represent a network with many hundreds or even thousands of links.
As networks quickly become larger and more complex, a need exists to simplify the topology of complex networks in order to avoid the considerable amount of advertising that causes increased information traffic flow over the network. Decreasing the amount of advertising across a network is desirable in order to increase network performance, maintenance, scalability and ease of use. An approach is needed that permits such real-time, dynamic and seamless changes in the network topology and configuration without adversely affecting network performance. Additionally, a need exists to quickly and easily calculate and recalculate routes between nodes, notwithstanding a dynamic change in the number of parallel links added to or dropped from the network.